home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 551-575 / disk_562 / intuisup / library / source.lzh / libstubs.asm < prev    next >
Assembly Source File  |  1991-10-19  |  5KB  |  279 lines

  1.         *************************************
  2.         *                                   *
  3.         *       Intuition Support v2.0      *
  4.         *   by Torsten Jürgeleit in 05/91   *
  5.         *                                   *
  6.         *         Library stub codes        *
  7.         *                                   *
  8.         *************************************
  9.  
  10. ;---------------------------------------------------------------------------
  11. ; Damned library stub codes needed, to save a4 (data segment ptr) +
  12. ; a6 (scratch reg for #pragma amicall) and call _geta4(), because Manx v5.0d
  13. ; #pragma intfunc don't work, arrgh !!!
  14. ;---------------------------------------------------------------------------
  15.  
  16. ;---------------------------------------------------------------------------
  17. ; External definitions
  18. ;---------------------------------------------------------------------------
  19.  
  20.     XDEF    _IGetRenderInfo
  21.     XDEF    _IFreeRenderInfo
  22.     XDEF    _IOpenWindow
  23.     XDEF    _IClearRenderWindow
  24.  
  25.     XDEF    _IDisplayTexts
  26.     XDEF    _IPrintText
  27.     XDEF    _IConvertUnsignedDec
  28.     XDEF    _IConvertSignedDec
  29.     XDEF    _IConvertHex
  30.     XDEF    _IConvertBin
  31.  
  32.     XDEF    _IDisplayBorders
  33.     XDEF    _IDrawBorder
  34.  
  35.     XDEF    _ICreateGadgets
  36.     XDEF    _IFreeGadgets
  37.     XDEF    _IDisplayGadgets
  38.     XDEF    _IRefreshGadgets
  39.     XDEF    _ISetGadgetAttributes
  40.     XDEF    _IActivateInputGadget
  41.     XDEF    _IGadgetAddress
  42.     XDEF    _IRemoveGadgets
  43.     XDEF    _IGetMsg
  44.     XDEF    _IReplyMsg
  45.  
  46.     XDEF    _ICreateMenu
  47.     XDEF    _IAttachMenu
  48.     XDEF    _IMenuItemAddress
  49.     XDEF    _IRemoveMenu
  50.     XDEF    _IFreeMenu
  51.  
  52. ;---------------------------------------------------------------------------
  53. ; Support macros
  54. ;---------------------------------------------------------------------------
  55.  
  56. CALL    MACRO
  57.     XREF    \1
  58.     jsr    \1
  59.     ENDM
  60.  
  61. PUSH    MACRO
  62.     movem.l    \1,-(sp)
  63.     ENDM
  64.  
  65. PULL    MACRO
  66.     movem.l    (sp)+,\1
  67.     ENDM
  68.  
  69. ;---------------------------------------------------------------------------
  70. ; Render functions
  71. ;---------------------------------------------------------------------------
  72.  
  73. _IGetRenderInfo:
  74.     PUSH    a4/a6
  75.     CALL    _geta4
  76.     CALL    _get_render_info
  77.     PULL    a4/a6
  78.     rts
  79.  
  80. _IFreeRenderInfo:
  81.     PUSH    a4/a6
  82.     CALL    _geta4
  83.     CALL    _free_render_info
  84.     PULL    a4/a6
  85.     rts
  86.  
  87. _IOpenWindow:
  88.     PUSH    a4/a6
  89.     CALL    _geta4
  90.     CALL    _open_window
  91.     PULL    a4/a6
  92.     rts
  93.  
  94. _IClearRenderWindow:
  95.     PUSH    a4/a6
  96.     CALL    _geta4
  97.     CALL    _clear_render_window
  98.     PULL    a4/a6
  99.     rts
  100.  
  101. ;---------------------------------------------------------------------------
  102. ; Text functions
  103. ;---------------------------------------------------------------------------
  104.  
  105. _IDisplayTexts:
  106.     PUSH    a4/a6
  107.     CALL    _geta4
  108.     CALL    _display_texts
  109.     PULL    a4/a6
  110.     rts
  111.  
  112. _IPrintText:
  113.     PUSH    a4/a6
  114.     CALL    _geta4
  115.     CALL    _print_text
  116.     PULL    a4/a6
  117.     rts
  118.  
  119. _IConvertUnsignedDec:
  120.     PUSH    a4/a6
  121.     CALL    _geta4
  122.     CALL    _convert_unsigned_dec
  123.     PULL    a4/a6
  124.     rts
  125.  
  126. _IConvertSignedDec:
  127.     PUSH    a4/a6
  128.     CALL    _geta4
  129.     CALL    _convert_signed_dec
  130.     PULL    a4/a6
  131.     rts
  132.  
  133. _IConvertHex:
  134.     PUSH    a4/a6
  135.     CALL    _geta4
  136.     CALL    _convert_hex
  137.     PULL    a4/a6
  138.     rts
  139.  
  140. _IConvertBin:
  141.     PUSH    a4/a6
  142.     CALL    _geta4
  143.     CALL    _convert_bin
  144.     PULL    a4/a6
  145.     rts
  146.  
  147. ;---------------------------------------------------------------------------
  148. ; Border functions
  149. ;---------------------------------------------------------------------------
  150.  
  151. _IDisplayBorders:
  152.     PUSH    a4/a6
  153.     CALL    _geta4
  154.     CALL    _display_borders
  155.     PULL    a4/a6
  156.     rts
  157.  
  158. _IDrawBorder:
  159.     PUSH    a4/a6
  160.     CALL    _geta4
  161.     CALL    _draw_border
  162.     PULL    a4/a6
  163.     rts
  164.  
  165. ;---------------------------------------------------------------------------
  166. ; Gadget functions
  167. ;---------------------------------------------------------------------------
  168.  
  169. _ICreateGadgets:
  170.     PUSH    a4/a6
  171.     CALL    _geta4
  172.     CALL    _create_gadgets
  173.     PULL    a4/a6
  174.     rts
  175.  
  176. _IFreeGadgets:
  177.     PUSH    a4/a6
  178.     CALL    _geta4
  179.     CALL    _free_gadgets
  180.     PULL    a4/a6
  181.     rts
  182.  
  183. _IDisplayGadgets:
  184.     PUSH    a4/a6
  185.     CALL    _geta4
  186.     CALL    _display_gadgets
  187.     PULL    a4/a6
  188.     rts
  189.  
  190. _IRefreshGadgets:
  191.     PUSH    a4/a6
  192.     CALL    _geta4
  193.     CALL    _refresh_gadgets
  194.     PULL    a4/a6
  195.     rts
  196.  
  197. _ISetGadgetAttributes:
  198.     PUSH    a4/a6
  199.     CALL    _geta4
  200.     CALL    _set_gadget_attributes
  201.     PULL    a4/a6
  202.     rts
  203.  
  204. _IActivateInputGadget:
  205.     PUSH    a4/a6
  206.     CALL    _geta4
  207.     CALL    _activate_input_gadget
  208.     PULL    a4/a6
  209.     rts
  210.  
  211. _IGadgetAddress:
  212.     PUSH    a4/a6
  213.     CALL    _geta4
  214.     CALL    _gadget_address
  215.     PULL    a4/a6
  216.     rts
  217.  
  218. _IRemoveGadgets:
  219.     PUSH    a4/a6
  220.     CALL    _geta4
  221.     CALL    _remove_gadgets
  222.     PULL    a4/a6
  223.     rts
  224.  
  225. _IGetMsg:
  226.     PUSH    a4/a6
  227.     CALL    _geta4
  228.     CALL    _get_msg
  229.     PULL    a4/a6
  230.     rts
  231.  
  232. _IReplyMsg:
  233.     PUSH    a4/a6
  234.     CALL    _geta4
  235.     CALL    _reply_msg
  236.     PULL    a4/a6
  237.     rts
  238.  
  239. ;---------------------------------------------------------------------------
  240. ; Menu functions
  241. ;---------------------------------------------------------------------------
  242.  
  243. _ICreateMenu:
  244.     PUSH    a4/a6
  245.     CALL    _geta4
  246.     CALL    _create_menu
  247.     PULL    a4/a6
  248.     rts
  249.  
  250. _IAttachMenu:
  251.     PUSH    a4/a6
  252.     CALL    _geta4
  253.     CALL    _attach_menu
  254.     PULL    a4/a6
  255.     rts
  256.  
  257. _IMenuItemAddress:
  258.     PUSH    a4/a6
  259.     CALL    _geta4
  260.     CALL    _menu_item_address
  261.     PULL    a4/a6
  262.     rts
  263.  
  264. _IRemoveMenu:
  265.     PUSH    a4/a6
  266.     CALL    _geta4
  267.     CALL    _remove_menu
  268.     PULL    a4/a6
  269.     rts
  270.  
  271. _IFreeMenu:
  272.     PUSH    a4/a6
  273.     CALL    _geta4
  274.     CALL    _free_menu
  275.     PULL    a4/a6
  276.     rts
  277.  
  278.     END
  279.